﻿namespace FunctionalTesting.NoAuthenticationRequired
{
    using System;
    using FunctionalTesting.Support;
    using Microsoft.VisualStudio.TestTools.UnitTesting;
    using OpenSource.TumblrAPI;
    using OpenSource.TumblrAPI.DataObjects;
    using OpenSource.TumblrAPI.Interfaces;
    using OpenSource.TumblrAPI.Support;

    [TestClass]
    public class RequestTags
    {
        private ITumblrBasic basic;

        [TestInitialize]
        public void Initialize()
        {
            TumblrSettings settings = TumblrApiFactory.CreateSettings("fuiKNFp9vQFvjLNvx4sUwti4Yb5yGutBN4Xh10LXZhhRKjWlV4");
            settings.Log = new DebugLogger(LogFlag.All);
            this.basic = TumblrApiFactory.CreateTumblrBasic(settings);
        }

        [TestMethod]
        public void RequestPostsWithTags_Simple()
        {
            TumblrPost[] posts = this.basic.RequestPostsWithTag("Dilbert");
        }

        [TestMethod]
        public void RequestPostsWithTags_WithBeforeDate()
        {
            TumblrPost[] posts = this.basic.RequestPostsWithTag("tumblr", new DateTime(2013, 3, 1), 50, PostFormat.Html);
        }

        [TestMethod]
        public void RequestPostsWithTags_WithBeforDateFeatured()
        {
            Assert.Inconclusive();
        }

        [TestMethod]
        public void RequestPostsWithTags_LimitSpecified()
        {
            Assert.Inconclusive();
        }

        [TestMethod]
        public void RequestPostsWithTags_FilterToText()
        {
            Assert.Inconclusive();
        }

        [TestMethod]
        public void RequestPostsWithTags_FilterToRaw()
        {
            Assert.Inconclusive();
        }

        [TestMethod]
        public void RequestPostsWithTags_FilterHtmlDefault()
        {
            Assert.Inconclusive();
        }

        [TestMethod]
        public void RequestPostsWithTags_MultipleTags()
        {
            Assert.Inconclusive();
        }
    }
}
